In the field of telecommunications, efforts have recently been directed towards developing advanced direct sequence spread spectrum (DS-SS) telecommunications systems. One example of a DS-SS type system is a Code Division Multiple Access (CDMA) type system.
In a CDMA type system multiple users, each using a channel identified by a uniquely assigned digital pseudonoise (PN) code sequence, simultaneously communicate with the system while sharing the same wideband frequency spectrum. Channel identification through the uniquely assigned digital codes is achieved by using the unique PN code to spread a digital information signal that is to be transmitted. The digital information signal may be a signal, such as the output of a digitized voice circuit that may have a bit rate, for example, of 10 kb/s, or a data signal that may have a higher bit rate. The PN code signal usually has a bit rate of several orders of magnitude greater than the information signal.
During spreading, the digital signal bandwidth is spread through the frequency bandwidth of the PN code sequence. Spreading is achieved by multiplying the PN code sequence and information signal in the time domain to generate a spread signal that has a bit rate of the PN code sequence. The spread signal is then RF modulated and transmitted on a carrier frequency that may also carry transmissions of information signals of other system users, where the other information signals have been spread by PN code sequences unique to each of the other users. The PN code sequences may be uniquely identified by having a unique phase or a unique bit sequence. In certain systems, such as a system operating according to the Telecommunications Industry Association/Electronic Industry Association (TIA/EIA) IS-95 standard, a transmission may be identified by two PN sequences. In IS-95 an individual base station is assigned a unique phase for a common system PN code sequence that spreads all forward link transmissions from base stations of that system. The unique phase identifies the base station. Each transmission from a base station is then also spread by a unique Walsh PN code sequence that identifies the particular channel on which the transmission is sent.
At the receiver, after carrier frequency demodulation, despreading is accomplished by generating a local replica of the transmitting user's assigned PN code with a random-sequence generator in the receiver, and then synchronizing the local PN code sequence to the PN code sequence that was superimposed by the transmitter on the incoming received signal. By removing the random sequence from the received signal and integrating it over a symbol period, a despread signal is obtained which ideally exactly represents the original digital information signal.
The process of signal synchronization is usually accomplished in two steps. The first step, called acquisition, includes bringing the PN code sequences generated in the transmitter and receiver into coarse time alignment, usually within one code chip interval. The second step, called tracking, involves continuously maintaining the best possible waveform alignment by means of a feedback loop.
Because of the importance of synchronization (or acquisition), many schemes have been proposed utilizing various types of detectors and decision strategies in different application areas. A common feature of all synchronization schemes is that the received signal and the locally generated PN code sequence are first correlated to determine the measure of similarity between the two. Secondly, the measure of similarity is compared to a threshold to decide if the two signals are in synchronization. If there is no synchronization, the acquisition procedure provides a change in the phase of the locally generated PN code sequence and another correlation is attempted as a part of the signal search through the receiver's PN phase space.
The speed of signal code acquisition and synchronization is generally an important performance factor in CDMA systems. For example, in an IS-95 system a mobile station must quickly search, acquire and synchronize to many different signals while maintaining communications with the system. The mobile station must initially acquire a pilot channel of the system upon powerup or entry into the system. As the mobile station moves through the system it must continually search, during ongoing communications, for stronger pilot channels of base stations located near the base station with which the mobile station is communicating. The pilot channels in IS-95 are transmitted by each base station using the same PN code but with different offsets, which allows them to be distinguished. All pilot channels in the IS-95 system use the Walsh code sequence of all ones, allowing the pilot channels to be received by all mobiles in the system. The mobile station searches for pilot channels based on PN pilot channel phase information received from the system. The mobile station must also search for phase varying multipath signals originally transmitted on a communications channel from a particular base station. Several multipath signals carrying the same information and on channels identified by the same PN code, but displaced in phase because of RF propagation effects, have to be searched so that the strongest signals can be found, combined and decoded. During handoff between base stations utilizing the same carrier frequencies (soft handoff), the mobile station must also search for and acquire voice channels of target base stations while simultaneously maintaining communications on a voice channel with the current base station.
As an example, pilot channel acquisition may be performed by generating an "early" and "on-time" signal from the received signal, for each pilot channel PN phase offset in the search set. The early and on-time signals may be spaced 1/2 of a chip period apart. Correlation is then performed on each of the early and on-time signals to generate a detection statistic. Correlation usually involves multiplying the early and on-time signals by a PN code sequence generated in the receiver and performing time integration on each multiplication result. Generally, both the early and on-time signals are correlated independently, and from this, two decisions statistics are formed. Typically, the larger of the two statistics is chosen and survives as the detection statistic for that particular offset tested. Detection statistics are generated for the PN phases searched and decisions are made based on the statistics. For example, synchronization to a pilot channel may be determined at the phase having the detection statistic with greatest magnitude. In multipath searching, a number of PN phase offsets having the detection statistics with greatest magnitude may be chosen for multipath reception.
An expression for the output of the on-time (o) correlation result may be given as: ##EQU1## and the early correlation (e) result as: ##EQU2## where b(m)=.+-.1 is the spreading code of the transmitted signal as received; b(m-q)=.+-.1 is the receiver generated spreading code having q as an offset relative to b(m); w(m)=.+-.1 is the Walsh sequence; p(m-qT.sub.c -.tau.) is the convolution of the transmitter and receiver filters, where .tau. is the time misalignment in the receiver pulse shaping filter, T.sub.c is the chip period, and the value qT.sub.c continues the integration time into the next chip in the PN code; M is the length of the integration, (1) is the PN code phase under test, and N is the total number of subdwells. For the example of IS-95 pilot channel acquisition, the Walsh sequence w(m) may be set to all ones to describe acquisition of the pilot channel.
As an alternative to summing the integration results from equation 1 to generate the detection statistic, the detection statistic may be generated by performing an FFT on each of the early and on-time integration results where the total integration is segmented into N equal length subdwells. Those subdwells are used as an input to an FFT routine which can be written as: ##EQU3## where r.sub.e.sup.(1) (n) represents the integration output for the nth subdwell for the early signal and r.sub.o.sup.(1) (n) represents the output for the nth subdwell for the on-time signal. The larger result may be chosen as the detection statistic in this case.
FIG. 1 illustrates the correlation process graphically. In FIG. 1, eight subdwell values are shown for the early 102 and on-time 104 signal. For each of the on-time eight subdwell values, r.sub.o.sup.(1) (n), n=0, . . . 7 is generated as in equation 1, and for each of the eight early subdwell values, r.sub.e.sup.(1) (n), n=0, . . . 7 is generated as in equation 2. Subsequent to the integration, two independent FFTs, R.sub.e (k.sup.2) and R.sub.o.sup.(1) (k), are computed for PN code phase 1 as in equations 3 and 4.
Equations 1-4 include complex values. One skilled in the art will realize that the process shown in FIG. 1 also includes processing of complex components of the signal.
The early/on-time method provides a good detection probability. However, in the early/on-time correlation method, only one PN code phase may be tested at a time for each pair of correlations (early and on-time) performed on the early/on-time signal pair. The method also requires hardware capable of performing the two integrations for the same PN code phase simultaneously.
In certain applications it may be desirable to use early/on-time acquisition and multipath searching techniques that can be executed faster than the conventional techniques. In other applications it may be desirable to decrease the complexity of the hardware necessary for early/on-time acquisition and multipath searching while maintaining the same speed. In many applications it may be desirable to both increase the speed of the acquisition procedure and decrease the hardware complexity.